import { defineStore } from 'pinia';
import request from '@/utils/request'
import { ApiRes, BannerItem, GoodItem, HotGoods, Brand, HomeProduct, Special } from '@/types/data'
export default defineStore('home', {
  state() {
    return {
      // 轮播图列表
      bannerList: [] as BannerItem[],
      // 新鲜好物列表
      newGoodList: [] as GoodItem[],
      // 人气推荐列表
      hotGoodList: [] as HotGoods[],
      // 热门品牌数据列表
      brandList: [] as Brand[],
      // 商品区块列表
      productList: [] as HomeProduct[],
      // 专题列表
      specialList: [] as Special[]
    }
  },
  actions: {
    // 获取轮播图数据
    async getBannerList() {
      const res = await request.get<ApiRes<BannerItem[]>>('/home/banner')
      // console.log('轮播图的数据', res.data.result);
      this.bannerList = res.data.result
    },
    // 获取新鲜好物列表
    async getNewList() {
      const res = await request.get<ApiRes<GoodItem[]>>('/home/new')
      console.log('--新鲜好物列表--', res.data);
      // setTimeout(() => {
      this.newGoodList = res.data.result
      // }, 2000);
    },
    // 获取人气推荐列表
    async getHotList() {
      const res = await request.get<ApiRes<HotGoods[]>>('/home/hot')
      this.hotGoodList = res.data.result
    },
    // 获取品牌数据列表
    async getBrandList() {
      const res = await request.get<ApiRes<Brand[]>>('/home/brand')
      // console.log('品牌数据列表', res.data);
      this.brandList = res.data.result
    },
    // 获取商品区块列表
    async getProductList() {
      const res = await request.get<ApiRes<HomeProduct[]>>('/home/goods')
      // console.log('--商品区块的列表数据--',res);
      this.productList = res.data.result
    },
    // 获取专题列表
    async getSpecialList() {
      const res = await request.get<ApiRes<Special[]>>('/home/special')
      // console.log('专题数据', res);
      this.specialList = res.data.result
    }
  }
})